package shujia.day02.ketang;
import java.util.Scanner;

/*
    Switch选择语句：
        语句定义格式：
            switch(表达式){
                case 常量值1:
                    表达式1;
                    break;
                case 常量值1:
                    表达式1;
                    break;
                case 常量值1:
                    表达式1;
                    break;
                ...
                default:
                    表达式1;
                    break;
            }

    注意事项：
        1、在jdk1.8的版本中，switch表达式类型是有限定，byte,short,int,char,字符串String,枚举
        2、case后面只能跟常量值，不能是变量
        3、执行流程：严格按照以下顺序执行：
            1）先计算表达式的结果值
            2）拿着结果值去自上而下匹配对应的case后面的常量值
            3）若其中一个case后面的常量值与计算的结果值一致，那么就会执行对应case中的表达式，执行完后遇到break结束整个switch
            4）若所有的case都不匹配，才会执行default语句中的表达式，执行完后遇到break结束整个switch

   思考：
        1、break语句能不能不写？可以不写，但是可能会造成switch穿透
        2、default语句能不能不写？可以不写，但是程序可能不会那么的严谨
        3、default语句一定要写在最后吗？不一定，可以写siwtch语句中的任意位置
 */
public class SwitchDemo1 {
    public static void main(String[] args) {
        //需求：假设我现在所带的金额必须是正好对应饮料的价格
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入您所带的金额：");
        int money = sc.nextInt();

        switch (money){
            default:
                System.out.println("没有您所带金额的饮料！！！");
                break;
            case 3:
                System.out.println("欢迎购买 可乐 ！！");
                break;
            case 5:
                System.out.println("欢迎购买红牛！！");
                break;
            case 6:
                System.out.println("欢迎购买旺仔牛奶！！");
                break;
            case 1:
                System.out.println("欢迎购买纯露！！！");
                break;

        }



    }
}
